package com.yunxi.order.pojo;


import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 车辆订单
 * </p>
 *
 * @author 
 * @since 2019-06-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="OrderVehicle对象", description="车辆订单")
public class OrderVehicleVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键ID")
    private String orderCarId;

    @ApiModelProperty(value = "pms_order_whole主键")
    private String orderId;

    @ApiModelProperty(value = "优先级")
    private Integer priorityLevel;

    @ApiModelProperty(value = "订单状态")
    private String orderStatus;

    @ApiModelProperty(value = "配车状态")
    private Integer matchStatus;

    @ApiModelProperty(value = "配车次数")
    private Integer matchCount;

    @ApiModelProperty(value = "审核状态0未审核")
    private Integer checkStatus;

    @ApiModelProperty(value = "生产状态1已捡取、2已排产、3已传输")
    private Integer produceStatus;

    @ApiModelProperty(value = "是否匹配生产")
    private Integer isProduce;

    @ApiModelProperty(value = "计划状态")
    private Integer planStatus;

    @ApiModelProperty(value = "是否锁定")
    private Integer isLock;

    @ApiModelProperty(value = "生产订单ID")
    private String orderProduceCode;

    @ApiModelProperty(value = "车辆VIN码")
    private String vin;

    @ApiModelProperty(value = "取消原因")
    private String info;

    @ApiModelProperty(value = "创建时间")
    private Date createDate;

    @ApiModelProperty(value = "创建人")
    private String createBy;

    @ApiModelProperty(value = "修改时间")
    private Date updateDate;

    @ApiModelProperty(value = "修改人")
    private String updateBy;

    @ApiModelProperty(value = "状态1启用0禁用")
    private Integer status;

    @ApiModelProperty(value = "是否删除")
    private Integer isDel;

    @ApiModelProperty(value = "备注")
    private String memo;

    @ApiModelProperty(value = "配车时间")
    private Date matchTime;

    @ApiModelProperty(value = "是否开发票")
    private Integer isOpenAccount;

    @ApiModelProperty(value = "是否合格")
    private Integer isCert;

    @ApiModelProperty(value = "车型")
    private String productCode;

    @ApiModelProperty(value = "收货人")
    private String linkman;

    @ApiModelProperty(value = "联系方式")
    private String linkphone;

    @ApiModelProperty(value = "付款方式")
    private String payway;

    @ApiModelProperty(value = "返利比例")
    private BigDecimal rebateProportion;

    @ApiModelProperty(value = "是否自提")
    private String isPickup;

    @ApiModelProperty(value = "收货时间")
    private Date takeoverTime;

    @ApiModelProperty(value = "渠道商仓库地址")
    private String storageCode;

    @ApiModelProperty(value = "装包代码")
    private String customPackCodes;

    @ApiModelProperty(value = "车辆下线表主键")
    private String vehicleId;

    @ApiModelProperty(value = "返利金额")
    private BigDecimal rebateAccount;

    @ApiModelProperty(value = "发运日期")
    private Date dispatchDate;

    @ApiModelProperty(value = "包装名称")
    private String customPackNames;

    @ApiModelProperty(value = "审核日期")
    private Date checkDate;

    @ApiModelProperty(value = "驳回原因")
    private String rejectInfo;

    @ApiModelProperty(value = "计划单号")
    private String zordNo;

    @ApiModelProperty(value = "客户订单号")
    private String customOrderNo;

    @ApiModelProperty(value = "渠道商代码")
    private String partnerCode;

    @ApiModelProperty(value = "车系编码")
    private String seriesCode;

    @ApiModelProperty(value = "车系名称")
    private String seriesName;

    @ApiModelProperty(value = "车型编码")
    private String modelCode;

    @ApiModelProperty(value = "车型名称")
    private String modelName;

    @ApiModelProperty(value = "配置编码")
    private String catalogCode;

    @ApiModelProperty(value = "配置名称")
    private String catalogName;

    @ApiModelProperty(value = "内饰颜色编码")
    private String colorCodeIn;

    @ApiModelProperty(value = "内饰颜色名称")
    private String colorNameIn;

    @ApiModelProperty(value = "外饰颜色编码")
    private String colorCodeOut;

    @ApiModelProperty(value = "外饰颜色名称")
    private String colorNameOut;

    @ApiModelProperty(value = "品牌名称")
    private String productName;

    @ApiModelProperty(value = "电池包")
    private String batteryPackCode;

    @ApiModelProperty(value = "市场价格")
    private BigDecimal marketPrice;

    @ApiModelProperty(value = "结算价")
    private BigDecimal settlementPrice;

    @ApiModelProperty(value = "优惠金额")
    private BigDecimal preferentialPrice;

    @ApiModelProperty(value = "税金")
    private BigDecimal taxesPrice;

    @ApiModelProperty(value = "装包明细JSON字符串")
    private String customPackDetails;

    @ApiModelProperty(value = "SAP销售订单号")
    private String sapOrderNo;

    @ApiModelProperty(value = "SAP处理日期")
    private String sapHandleDate;

    @ApiModelProperty(value = "SAP处理时间")
    private String sapHandleTime;

    @ApiModelProperty(value = "SAP处理状态")
    private String sapHandleStatus;

    @ApiModelProperty(value = "2表示寄售 1表示批售")
    private String type;

    @ApiModelProperty(value = "渠道商收货地址")
    private String addr;

    @ApiModelProperty(value = "SAP返回消息")
    private String sapHandleMessage;

    private String currDate;

    private String vipId;

    private Integer vehiclePurpose;
}
